WPS 加载项开发 > 表格 API 参考 > Shape > Shape 对象

代表绘图层中的对象,例如自选图形、任意多边形、OLE 对象或图片。

说明

Shape 对象是 Shapes 集合的成员。Shapes 集合包含某个工作簿中的所有形状。

注释
有三个代表形状的对象:Shapes 集合,它代表工作簿中所有的形状;ShapeRange 集合,它代表工作簿中形状的指定子集(例如,ShapeRange 对象可以代表工作簿中的形状一和形状四,或者,可以代表工作簿中所有选定的形状);Shape 对象,它代表文档中的某一个形状。如果您需要同时处理几个形状,或处理选定区域中的多个形状,请使用 ShapeRange 集合。

使用 Shape 对象

以下各节说明了如何:

返回与连接符的端点相连的形状

要返回一个代表连接符所连接形状之一的 Shape 对象,请使用 BeginConnectedShape 或 EndConnectedShape 属性。

返回新建的任意多边形

使用 BuildFreeform 和 AddNodes 方法可定义一个新任意多边形的几何特性,使用 ConvertToShape 方法可创建任意多边形并返回代表它的 Shape 对象。

返回组中的单个形状

使用 GroupItems(index )(其中 index 是形状的名称或组中的索引号)可返回一个代表一组形状中某一形状的 Shape 对象。

返回新组成的形状组

使用 Group 或 Regroup 方法可将一系列形状分成一组并返回一个 Shape 对象,该对象代表新形成的组。在形成了一个组之后,您可以按您处理其他任何形状的方法来处理该组。

返回现有的形状

使用 Shapes(index )(其中 index 是形状名称或索引号)可返回代表某个形状的 Shape 对象。

返回选定区域中的形状

使用 Selection.ShapeRange(index)(其中 index 是形状名称或索引号)可返回一个代表选定区域中的形状的 Shape 对象。

示例

下例将 myDocument 中的形状一和名为“Rectangle 1”的形状进行水平翻转。

示例代码
let myDocument = Worksheets.Item(1)
myDocument.Shapes.Item(1).Flip(msoFlipHorizontal)
myDocument.Shapes.Item("Rectangle 1").Flip(msoFlipHorizontal)

每个添加到 Shapes 集合的形状将被分配一个默认名称。若要赋予该形状一个更有意义的名称,请使用 Name 属性。下例在 myDocument 中添加一个矩形,将其命名为 Red Square,并设置其前景色与线条样式。

示例代码
let shape = Worksheets.Item(1).Shapes.AddShape(msoShapeRectangle, 144, 144, 72, 72)
shape.Name = "Red Square"
shape.Fill.ForeColor.RGB = (255, 0, 0)
shape.Line.DashStyle = msoLineDashDot

下例设置了活动窗口内选定区域中的第一个形状的填充格式,假定至少选定了一个形状。

示例代码
ActiveWindow.Selection.ShapeRange.Item(1).Fill.ForeColor.RGB = (255, 0, 0)


请参阅